package com.gitee.wsl.compose.chart.xy.line.area.model

import com.gitee.wsl.compose.chart.xy.model.PointEntry

/**
 * Specifies baseline coordinates for drawing filled areas on line charts.
 */
 sealed interface AreaBaseline<X, Y> {

    /**
     * Specifies that the area should be drawn to a constant y-axis value across the x-axis range.
     */
     data class ConstantLine<X, Y>(val value: Y) : AreaBaseline<X, Y>

    /**
     * Specifies an arbitrary line to which the area should be drawn. The number of values and their
     * x-axis coordinates must match the data provided to [LineChart].
     */
     data class ArbitraryLine<X, Y>(val values: List<PointEntry<X, Y>>) : AreaBaseline<X, Y>
}